﻿<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="https://www.w3.org/1999/xhtml" lang="zh-CN" xml:lang="zh-CN">
<head><meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
    <title>8.2. 创建 /etc/fstab 文件</title>
    <link rel="stylesheet" href="../stylesheets/lfs.css" type="text/css" />
    <link rel="stylesheet" href="../stylesheets/lfs-print.css" type="text/css" media="print" />
<script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?d286c55b63a3c54a1e43d10d4c203e75"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script>
</head>
  <body id="lfs" class="6.2">
    <div class="navheader">
      <div class="headertitles">
        <h4>Linux From Scratch - 版本 6.2</h4>
        <h3>第八章 使 LFS 系统能够启动</h3>
      </div>
      <ul class="headerlinks">
        <li class="prev">
          <a accesskey="p" href="chapter08.html" title="使 LFS 系统能够启动">后退</a>
          <p>使 LFS 系统能够启动</p>
        </li>
        <li class="next">
          <a accesskey="n" href="kernel.html" title="Linux-2.6.16.27">前进</a>
          <p>Linux-2.6.16.27</p>
        </li>
        <li class="up"><a accesskey="u" href="chapter08.html" title="第八章 使 LFS 系统能够启动">上一级</a></li>
        <li class="home"><a accesskey="h" href="../index.html" title="Linux From Scratch - 版本 6.2">首页</a></li>
      </ul>
    </div>
    <div class="sect1">
      <div class="titlepage">
        <h1 class="sect1">8.2. 创建 /etc/fstab 文件</h1>
      </div>
      <p>一些程序用 <tt class="filename">/etc/fstab</tt> 文件来确定哪一些文件系统是默认被加载了，加载顺序情况，哪些必须被检查的(完整性错误校验)。创建一个新的文件系统表大致如下所示： </p>
      <pre class="userinput"><kbd class="command">cat &gt; /etc/fstab &lt;&lt; "EOF"
<tt class="literal"># Begin /etc/fstab

# file system  mount-point  type   options         dump  fsck
#                                                        order

/dev/<em class="replaceable"><tt>&lt;xxx&gt;</tt></em>     /            <em class="replaceable"><tt>&lt;fff&gt;</tt></em>  defaults        1     1
/dev/<em class="replaceable"><tt>&lt;yyy&gt;</tt></em>     swap         swap   pri=1           0     0
proc           /proc        proc   defaults        0     0
sysfs          /sys         sysfs  defaults        0     0
devpts         /dev/pts     devpts gid=4,mode=620  0     0
shm            /dev/shm     tmpfs  defaults        0     0
# End /etc/fstab</tt>
EOF</kbd></pre>
      <p>在你的系统上替换 <em class="replaceable"><tt>&lt;xxx&gt;</tt></em>，<em class="replaceable"><tt>&lt;yyy&gt;</tt></em>，和 <em class="replaceable"><tt>&lt;fff&gt;</tt></em> 为适当的值，例如， <tt class="filename">hda2</tt>,
        <tt class="filename">hda5</tt>，and <tt class="systemitem">ext3</tt>。
        关于文件中六个字段的详细信息，可通过<span><strong class="command">man 5 fstab</strong></span>获取。</p>
      <p>这个 <tt class="filename">/dev/shm</tt> 挂载点是为 <tt class="systemitem">tmpfs</tt> (虚拟内存文件系统)能包括启用POSIX共享内存。这需要内核必须在构建的时候支持这个选项才能起作用(更多相关信息在下一个章节)。请注意，目前很少软件使用POSIX共享内存。
        所以，认为 <tt class="filename">/dev/shm</tt> mount
挂载点选项是可选择的，更多信息请查看内核源码树里的 <tt class="filename">Documentation/filesystems/tmpfs.txt</tt>。</p>
      <p>文件系统有 MS-DOS 或 Windows 血统(i.e.: vfat，ntfs，smbfs,
        cifs，iso9660，udf)需要有"<span class="quote">iocharset</span>" 加载选项载，以使文件名称的非ASCII(美国信息交换标准代码)特征被适当解释。这个选项和你的所处位置特征是一样的，用这个方式调整内核支持它。如果需要操作相关的特征定义(在 File systems -&gt;
        Native Language Support下可找到)，可以编译进内核里或编译成模块。 "<span class="quote">codepage</span>"
        选项同样也是为 vfat 和 smbfs 文件系统所需要. 它应该被设置为 MS-DOS 在你的国家里使用的 codepage 数字号。举个例子，为了挂在 USB flash 设备，ru_RU.KOI8-R 的使用者需要在 <tt class="filename">/etc/fstab</tt> 里的以下行:</p>
      <pre class="screen"><tt class="literal">/dev/sda1    /media/flash vfat
    noauto,user,quiet,showexec,iocharset=koi8r,codepage=866 0 0</tt></pre>
      <p>ru_RU.UTF-8 使用者的相应行：</p>
      <pre class="screen"><tt class="literal">/dev/sda1    /media/flash vfat
    noauto,user,quiet,showexec,iocharset=utf8,codepage=866 0 0</tt></pre>
      <div class="note">
        <div class="admonhead">
          <img alt="[Note]" src="../images/note.png" />
          <h3 class="admontitle">注意</h3>
        </div>
        <div class="admonbody">
          <p>在后面的例子里，内核发出如下信息：</p>
          <pre class="screen"><tt class="computeroutput">FAT: utf8 is not a recommended IO charset for FAT filesystems,
    filesystem will be case sensitive!</tt></pre>
          <p>这个否定的建议应该可以被忽略，因为所有的其他"<span class="quote">iocharset</span>"
            值选项造成UTF-8 locales文件名的错误显示。</p>
        </div>
      </div>
      <p>它也可能是在内核构造的时候为一些文件系统指定默认的 codepage 和 iocharset。相关的参数是指定的 "<span class="quote">默认NLS选项</span>" (CONFIG_NLS_DEFAULT)，"<span class="quote">默认远程NLS选项</span>"
        (CONFIG_SMB_NLS_DEFAULT)，"<span class="quote">默认的FAT的codepage
       </span>" (CONFIG_FAT_DEFAULT_CODEPAGE)，和
        "<span class="quote">默认FAT的iocharset</span>"
        (CONFIG_FAT_DEFAULT_IOCHARSET)。在这里不叙述在内核编译时为 ntfs 文件的系统设置。</p>
    </div>
    <div class="navfooter">
      <ul>
        <li class="prev">
          <a accesskey="p" href="chapter08.html" title="使 LFS 系统能够启动">后退</a>
          <p>使 LFS 系统能够启动</p>
        </li>
        <li class="next">
          <a accesskey="n" href="kernel.html" title="Linux-2.6.16.27">前进</a>
          <p>Linux-2.6.16.27</p>
        </li>
        <li class="up"><a accesskey="u" href="chapter08.html" title="第八章 使 LFS 系统能够启动">上一级</a></li>
        <li class="home"><a accesskey="h" href="../index.html" title="Linux From Scratch - 版本 6.2">首页</a>.
        </li>
      </ul>
    </div>
</body></html>
